Le reti di interazione proteina-proteina (protein-protein interaction networks, o PPNIs) rappresentano attraverso dei grafi i contatti fisici tra proteine in una cellula. Sono utilizzate per:
Date le limitazioni delle tecniche di rilevamento di interazioni proteina-proteina, i dataset disponibili sono incompleti e “rumorosi”.
Il dataset (Uetz p., et al. (2000)) si riferisce all’insieme proteine e interazioni tra esse all’interno di cellule di S. cerevisiae, o lievito di birra. È composto da 927 nodi (proteine) e 875 archi (interazioni).
## INTERACTOR_A INTERACTOR_B OFFICIAL_SYMBOL_FOR_A OFFICIAL_SYMBOL_FOR_B
## 1 YOR128C YOR128C ADE2 ADE2
## 2 YOR128C YCR066W ADE2 RAD18
## 3 YOR128C YCR067C ADE2 SED4
## 4 YGR061C YLR386W ADE6 VAC14
## 5 YDR408C YOR174W ADE8 MED4
## 6 YDR408C YGL127C ADE8 SOH1
## ALIASES_FOR_A ALIASES_FOR_B EXPERIMENTAL_SYSTEM SOURCE PUBMED_ID
## 1 N/A N/A Two-hybrid Uetz P et al. 10688190
## 2 N/A N/A Two-hybrid Uetz P et al. 10688190
## 3 N/A N/A Two-hybrid Uetz P et al. 10688190
## 4 N/A N/A Two-hybrid Uetz P et al. 10688190
## 5 N/A N/A Two-hybrid Uetz P et al. 10688190
## 6 N/A MED31 Two-hybrid Uetz P et al. 10688190
## ORGANISM_A_ID ORGANISM_B_ID
## 1 4932 4932
## 2 4932 4932
## 3 4932 4932
## 4 4932 4932
## 5 4932 4932
## 6 4932 4932
Numero di nodi della rete completa:
## [1] 927
Numero di nodi della componente gigante:
## [1] 415
TODO: considerazioni
TODO: perché
I nodi con maggiore e minore numero di vicini:
## YML064C YGL212W YDR328C YJR022W YBL026W YMR308C
## 21 15 14 12 11 11
## YFL056C YLR078C YKR030W YNL146W YBL007C YJR093C
## 1 1 1 1 1 1
Il grado medio dei nodi è
## [1] 2.395181
La distribuzione dei gradi nel grafo:
## degree_centrality
## 1 2 3 4 5 6 7 8 10 11 12 14 15 21
## 210 80 45 29 17 9 11 4 3 3 1 1 1 1
Rappresentazione grafica:
Il nodo con grado maggiore è
## YML064C
## 21
e i suoi 21 vicini sono
## [1] "YPL049C" "YER179W" "YPR182W" "YDL246C" "YLR423C" "YNL218W" "YPL192C"
## [8] "YEL015W" "YLR284C" "YJR131W" "YJL058C" "YDR174W" "YOR020C" "YJR159W"
## [15] "YOR229W" "YDR110W" "YKL008C" "YBR171W" "YNL333W" "YHR198C" "YJR056C"
Ricercando su FungiDB, troviamo che in letteratura le interazioni della proteina YML064C sono le seguenti
## [1] "YBR072W" "YBR137W" "YBR171W" "YBR176W" "YDL246C" "YDR110W" "YDR174W"
## [8] "YEL015W" "YEL066W" "YER179W" "YFR028C" "YGL040C" "YGL221C" "YHR025W"
## [15] "YHR113W" "YHR198C" "YJL058C" "YJL218W" "YJR053W" "YJR056C" "YJR131W"
## [22] "YJR159W" "YKL008C" "YKL035W" "YKL067W" "YKL103C" "YLR284C" "YLR328W"
## [29] "YLR377C" "YLR423C" "YNL044W" "YNL218W" "YNL333W" "YOR020C" "YOR229W"
## [36] "YOR284W" "YPL049C" "YPL111W" "YPL192C" "YPR182W"
Verifichiamo che i nodi del grafo adiacenti a YML064C siano corretti, ovvero che i nodi vicini trovati appaiano tra le interazioni indicate in letteratura:
## [1] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
## [16] TRUE TRUE TRUE TRUE TRUE TRUE
Le funzioni cellulari delle proteine con grado maggiore sono:
## YML064C YGL212W YDR328C
## 21 15 14
TODO: considerazioni
La skewness della distribuzione dei gradi è:
## [1] 3.115669
La media e la mediana della distribuzione sono:
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 1.000 1.000 1.000 2.395 3.000 21.000
Istogramma della distribuzione dei gradi nel grafo:
Si può verificare che la distribuzione dei gradi dei nodi segue una
legge di potenza graficando la distribuzione stessa in scala logaritmica
su entrambi gli assi.
Adattando (fitting) una power law alla distribuzione, si ottiene una retta (blu) con alfa pari a:
## [1] 3.174691
Mentre, applicando una semplice regressione lineare sui dati, si ottiene un’altra retta (grigia) la cui intercetta è:
## log(x)
## -2.043161
Grafico non logaritmico della distribuzione dei gradi e della legge
di potenza adattata ai dati:
Funzione di distribuzione dei gradi, cumulativa:
TODO: considerazioni
Si calcola il grado di assortatività della rete:
## [1] -0.2047432
Il valore negativo indica che c’è disassortatività. Se si controlla il grado dei nodi collegati direttamente ai 3 nodi con grado maggiore, si può notare come essi abbiano un grado piuttosto basso:
## YML064C YGL212W YDR328C
## 21 15 14
## [1] "YML064C"
## YPL049C YER179W YPR182W YDL246C YLR423C YNL218W YPL192C YEL015W YLR284C YJR131W
## 2 4 3 6 5 6 4 6 2 2
## YJL058C YDR174W YOR020C YJR159W YOR229W YDR110W YKL008C YBR171W YNL333W YHR198C
## 2 4 3 4 2 3 1 1 2 1
## YJR056C
## 1
## [1] "YGL212W"
## YGL161C YLR423C YBR205W YLR166C YAL047C YMR053C YOR106W YGL104C YNL263C YJL151C
## 5 5 4 1 1 1 1 1 2 1
## YMR071C YOL129W YOR292C YPL246C YML001W
## 1 1 1 3 1
## [1] "YDR328C"
## YDL132W YLR429W YMR094W YIL046W YLR368W YML088W YLR399C YFL009W YJR090C YDR139C
## 6 1 3 7 8 1 1 1 1 1
## YOR057W YLR097C YLR224W YLR352W
## 1 1 1 1
Nelle PPINs i nodi con grado più alto sono raramente collegati ad altri nodi con grado alto. Questo fenomeno è in contrasto con ciò che accade nelle reti sociali.
TODO: considerazioni
Numero di nodi del grafo:
## [1] 415
Distanza media:
## [1] 7.43434
Distanza massima:
## [1] 20
Grafici.
Cammini geodetici dal nodo con più alto grado YML064C a tutti i nodi con grado 1.
## + 11/415 vertices, named, from b893343:
## [1] YML064C YDR110W YER161C YGL201C YLR233C YNL229C YKL095W YDR416W YBR188C
## [10] YLR117C YBR244W
TODO: considerazioni
Calcolo della modularità applicando 3 algoritmi di community detection che sono stati utilizzati in letteratura nello studio di PPINs:
## [1] 0.8350343
## [1] 0.8434085
## [1] 0.8384067
Si ottengono modularità piuttosto simili. L’applicazione dell’algoritmo Louvain restituisce modularità maggiore. Si decide di analizzare le comunità individuate dal secondo miglior algoritmo, quello di edge betweenness in quanto
Il numero di comunità:
## [1] 24
La dimensione di ciascuna comunità:
## Community sizes
## 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
## 16 8 20 29 29 9 26 7 22 25 19 41 20 15 9 12 24 7 23 12 7 6 6 23
Il grafo:
Si possono osservare un elevato numero di comunità. È possibile analizzare se le proteine appartenenti ad una comunità sono correlate anche da un punto di vista biologico utilizzando Gene Ontology (GO). GO è un progetto bioinformatico che offre annotazioni e descrizioni di geni di vari organismi.
La South Dakota State University ha sviluppato un’app in Shiny chiamata ShinyGO. Permette, tra le varie cose, data una lista di proteine (geni), di visualizzare un grafo in cui
Il grafo per la comunità più grande:
## $`12`
## [1] "YPL049C" "YER179W" "YOR180C" "YIL046W" "YLR335W" "YGR119C"
## [7] "YGL134W" "YPL031C" "YDR313C" "YMR308C" "YLR082C" "YHR084W"
## [13] "YML064C" "YBR270C" "YDL246C" "YDR326C" "YHR039C" "YIL105C"
## [19] "YMR068W" "YDR480W" "YLR284C" "YBR138C" "YJR131W" "YJL058C"
## [25] "YOR020C" "YJL041W" "YMR236W" "YGL215W" "YIL050W" "YPL219W"
## [31] "YDL179W" "YJR159W" "YPL133C" "YOR229W" "YER045C" "YIR025W"
## [37] "YKL008C" "YBR171W" "YHR198C" "YJR056C" "YER007C-A"
Si osservano due “sottocomunità” da un punto di vista funzionale della cellula:
Il grafo per la seconda comunità più grande:
## $`4`
## [1] "YPR020W" "YDL132W" "YLR429W" "YMR094W" "YDR503C" "YMR314W" "YDR328C"
## [8] "YJL048C" "YLR368W" "YML088W" "YKL130C" "YLR100W" "YLR128W" "YGL249W"
## [15] "YLL052C" "YOR359W" "YMR048W" "YLR399C" "YFL009W" "YJR090C" "YDR139C"
## [22] "YOR057W" "YLR097C" "YLR224W" "YLR352W" "YHR106W" "YHR075C" "YPR078C"
## [29] "YPR093C"
Sono presenti processi legati principalmente al catabolismo.
Il grafo per la terza comunità più grande:
## $`5`
## [1] "YOR026W" "YGL116W" "YAL040C" "YGR014W" "YML031W" "YFR002W" "YER105C"
## [8] "YMR129W" "YGL229C" "YNL236W" "YDR214W" "YJL013C" "YJL030W" "YDL165W"
## [15] "YPL211W" "YDL088C" "YMR153W" "YJL057C" "YBR196C" "YJL178C" "YOR062C"
## [22] "YPR040W" "YDR054C" "YGL238W" "YJR034W" "YKL012W" "YFR033C" "YGR046W"
## [29] "YGR117C"
In questo caso si osserva un nodo etichettato con “divisione cellulare” che collega due componenti più connesse tra di loro:
Selezionando un certo numero di proteine in maniera casuale, non sempre si ottengono dei risultati significativi. A volte le proteine scelte casualmente interagiscono effettivamente tra di loro, producendo un grafo, altre volte no. Ad esempio, scegliendo in maniera random le seguenti 32 proteine
## [1] "YDR110W" "YFL038C" "YDR378C" "YOR262W" "YIL144W" "YKL008C" "YGR253C"
## [8] "YOL020W" "YGL215W" "YML114C" "YER105C" "YOL105C" "YIR025W" "YDR469W"
## [15] "YER047C" "YIL046W" "YNL154C" "YGL201C" "YJL041W" "YCL059C" "YOR106W"
## [22] "YER161C" "YLR315W" "YMR255W" "YHR106W" "YKR037C" "YDR061W" "YOL012C"
## [29] "YAL028W" "YKL130C" "YBR270C" "YMR291W"
si ottiene “No significant enrichment found.”. Ciò significa che non è possibile descrivere l’insieme di proteine dato in input utilizzando dei GO terms condivisi (statisticamente) significativi. In altre parole, queste 32 proteine sono associate a termini molto diversi fra loro, oppure sono associate a termini di alto livello (es biological process vs DNA repair).
TODO: considerazioni
In biologia si utilizzano diverse (e a volte complesse) misure di similarità, ad esempio, per le proteine, eseguendo allineamenti di sequenze amminoacidiche. Si utilizza qui un’altra misura di similarità utilizzata in questo campo: il coefficiente di correlazione di Pearson. Si esegue un clustering gerarchico con metodo average-linkage per unire i gruppi.
Per confrontarlo con il metodo di individuazione di comunità precedente, si può tagliare il dendrogramma ad un’altezza che produce 24 cluster:
## [1] 0.9979973
Si osserva come si debba tagliare in alto per ottenere il numero di gruppi desiderato.
La dimensione dei gruppi:
## clusters
## 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
## 37 12 10 76 16 26 31 38 18 15 11 36 8 2 16 3 2 8 10 10 1 2 24 3
Il grafo:
Confronto tra dimensioni di comunità con edge betweenness e dimensioni di clusters con la similarità di Pearson:
## communities clusters
## Min. : 6.00 Min. : 1.00
## 1st Qu.: 8.75 1st Qu.: 6.75
## Median :17.50 Median :11.50
## Mean :17.29 Mean :17.29
## 3rd Qu.:23.25 3rd Qu.:24.50
## Max. :41.00 Max. :76.00
TODO: considerazioni